package 力扣日常刷题.木23一月.第11天311;

import 力扣日常刷题.TreeNode;

import java.util.*;

/**
 * @author 帅小伙
 * @date 2022/3/11
 * @description
 */
public class Demo41从上到下打印二叉树2 {

    List<List<Integer>> ans = new ArrayList<>();


    public List<List<Integer>> levelOrder(TreeNode root) {
        Queue<TreeNode> queue = new LinkedList<>();
        if (root != null) queue.add(root);

        while (!queue.isEmpty()) {
            List<Integer> list = new ArrayList<>();


            for (int i = queue.size(); i > 0; i--) {
                TreeNode node = queue.poll();
                list.add(node.val);
                if(node.left!=null) queue.add(node.left);
                if(node.right!=null) queue.add(node.right);
            }
            if(ans.size() % 2 == 1) Collections.reverse(list);
            ans.add(list);
        }
        return ans;

    }


}
